package com.mindao.app.weixin.service;

import java.util.List;

import com.mindao.app.ea.model.ZTreeNodeVO;
import com.mindao.app.weixin.model.WxmpButton;

/**
/* 版权所有： 广州敏道科技有限公司
/*
/* 功能描述：
/*
/* 创 建 人：李国才
/* 创建时间：2016年7月17日 下午4:27:30 	
 **/
public interface WxmpButtonService {
	/**
	 * 加载ztree控件的原始数据
	 * 
	 * 按照类型和sortno排序，包括id,name,pid。父节点为空手，pid=0
	 * 
	 * @param disabled 是否有效，取值1失效，0:有效，null。null时所有
	 * @return
	 */
	public List<ZTreeNodeVO> loadZtreeData(Integer disabled,String onclick );
	/**
	 * 得到下一个编号
	 * 
	 * @param parentId 父ID
	 * @return
	 */
	public Long getNextSortNo(Long parentId );
	/**
	 * 上下移动
	 * @param id
	 * @param parentId
	 * @param upside
	 * @return
	 */
	public boolean move(Long id, Long parentId,boolean upside);
	/**
	 * 得到子节点数据
	 * @param disabled
	 * @param parentId
	 * @return
	 */
	public List<WxmpButton> findByParentId(Integer disabled,Long parentId ) ;
	
	/**
	 * 递归删除子组织 
	 * 
	 * @param id
	 * @return
	 */
	public boolean deleteResursively(Long id );
	
	/**
	 * 判断父子关系是否正常
	 * 
	 * @param id
	 * @return
	 */
	public boolean judgeParentRelation(WxmpButton child,WxmpButton parent );
	
	/**
	 * 判断是否可以下移
	 * 
	 * @param id
	 * @return
	 */
	public boolean judgeMoveDownable(WxmpButton org );
	/**
	 * 判断是否可以上移
	 * 
	 * @param id
	 * @return
	 */
	public boolean judgeMoveUpable(WxmpButton org );
}
